package ca.newcommerce.youtube.data
{
    import ca.newcommerce.youtube.iterators.*;

    public class ProfileData extends AbstractData
    {
        protected var _data:Object;

        public function ProfileData(param1:Object)
        {
            this._data = param1;
            return;
        }// end function

        public function get gender() : String
        {
            return fromObj(this._data, "yt$gender");
        }// end function

        public function get feedLinks() : FeedLinkIterator
        {
            return new FeedLinkIterator(this._data.gd$feedLink);
        }// end function

        public function get movies() : String
        {
            return fromObj(this._data, "yt$movies");
        }// end function

        public function get updated() : String
        {
            return fromObj(this._data, "updated");
        }// end function

        public function get author() : AuthorIterator
        {
            return new AuthorIterator(this._data.author);
        }// end function

        public function get username() : String
        {
            return fromObj(this._data, "yt$username");
        }// end function

        public function get title() : String
        {
            return fromObj(this._data, "title");
        }// end function

        public function get occupation() : String
        {
            return fromObj(this._data, "yt$occupation");
        }// end function

        public function get id() : String
        {
            return fromObj(this._data, "id");
        }// end function

        public function get categories() : CategoryIterator
        {
            return new CategoryIterator(this._data.category);
        }// end function

        public function get lastname() : String
        {
            return fromObj(this._data, "yt$lastname");
        }// end function

        public function get statistics() : StatisticsData
        {
            return new StatisticsData(this._data.yt$statistics);
        }// end function

        public function get music() : String
        {
            return fromObj(this._data, "yt$music");
        }// end function

        public function get books() : String
        {
            return fromObj(this._data, "yt$books");
        }// end function

        public function get thumbnail() : String
        {
            return this._data.media$thumbnail.url;
        }// end function

        public function get published() : String
        {
            return fromObj(this._data, "published");
        }// end function

        public function get hobbies() : String
        {
            return fromObj(this._data, "yt$hobbies");
        }// end function

        public function get hometown() : String
        {
            return fromObj(this._data, "yt$hometown");
        }// end function

        public function get school() : String
        {
            return fromObj(this._data, "yt$school");
        }// end function

        public function get location() : String
        {
            return fromObj(this._data, "yt$location");
        }// end function

        public function get relationship() : String
        {
            return fromObj(this._data, "yt$relationship");
        }// end function

        public function get links() : LinkIterator
        {
            return new LinkIterator(this._data.link);
        }// end function

        public function get firstname() : String
        {
            return fromObj(this._data, "yt$firstname");
        }// end function

        public function get company() : String
        {
            return fromObj(this._data, "yt$company");
        }// end function

        public function get age() : Number
        {
            return parseInt(fromObj(this._data, "yt$age"));
        }// end function

    }
}
